package com.smart.community.common.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.util.Date;

/**
 * 其他个人信息表
 * @author 子未语
 */
@Data
@TableName(value = "other_information")
public class OtherInformation {
    /**
     * 其他个人信息表
     */
    @TableId(value = "other_id", type = IdType.INPUT)
    private Integer otherId;

    /**
     * 外键用于关联上用户信息表
     */
    @TableField(value = "sys_user_id")
    private Integer sysUserId;

    /**
     * 联系手机
     */
    @TableField(value = "phone_number")
    private String phoneNumber;

    /**
     * 邮箱
     */
    @TableField(value = "email")
    private String email;

    /**
     * 出生日期
     */
    @TableField(value = "date_of_birth")
    private Date dateOfBirth;

    /**
     * 性别
     */
    @TableField(value = "sex")
    private Integer sex;

    /**
     * 民族
     */
    @TableField(value = "ethnic")
    private String ethnic;

    /**
     * 籍贯
     */
    @TableField(value = "birthplace")
    private String birthplace;

    /**
     * 户口类型
     */
    @TableField(value = "household_type")
    private Integer householdType;

    /**
     * 政治面貌
     */
    @TableField(value = "political_status")
    private Integer politicalStatus;

    /**
     * 证件类型
     */
    @TableField(value = "type_of_certificate")
    private Integer typeOfCertificate;

    /**
     * 证件号
     */
    @TableField(value = "license_number")
    private Integer licenseNumber;

    /**
     * 婚姻状态
     */
    @TableField(value = "marital_status")
    private Integer maritalStatus;

    /**
     * 学位学历
     */
    @TableField(value = "degree_qualifications")
    private Integer degreeQualifications;

    /**
     * 健康状况
     */
    @TableField(value = "physical_condition")
    private Integer physicalCondition;

    /**
     * 现居地址
     */
    @TableField(value = "current_address")
    private String currentAddress;

    /**
     * 家庭联系方式
     */
    @TableField(value = "family_contact_details")
    private String familyContactDetails;

    public static final String COL_OTHER_ID = "other_id";

    public static final String COL_SYS_USER_ID = "sys_user_id";

    public static final String COL_PHONE_NUMBER = "phone_number";

    public static final String COL_EMAIL = "email";

    public static final String COL_DATE_OF_BIRTH = "date_of_birth";

    public static final String COL_SEX = "sex";

    public static final String COL_ETHNIC = "ethnic";

    public static final String COL_BIRTHPLACE = "birthplace";

    public static final String COL_HOUSEHOLD_TYPE = "household_type";

    public static final String COL_POLITICAL_STATUS = "political_status";

    public static final String COL_TYPE_OF_CERTIFICATE = "type_of_certificate";

    public static final String COL_LICENSE_NUMBER = "license_number";

    public static final String COL_MARITAL_STATUS = "marital_status";

    public static final String COL_DEGREE_QUALIFICATIONS = "degree_qualifications";

    public static final String COL_PHYSICAL_CONDITION = "physical_condition";

    public static final String COL_CURRENT_ADDRESS = "current_address";

    public static final String COL_FAMILY_CONTACT_DETAILS = "family_contact_details";
}